Method, apparatus, and computer program product for efficient use of frequency bands and channels in  wireless environment

ABSTRACT

A method to provide interoperable mechanisms for efficient use of frequency bands and channels in Wi-Fi networks, including receiving, by an access point device, a wireless request message from a wireless device, requesting information on candidate wireless networks; determining, by the access point device, whether the wireless device is associated with the access point device; and composing, by the access point device, a forwarding message to be transmitted by the access point device to a server, and including in the forwarding message an indication that the wireless device is associated with the access point device, if the wireless device is associated with the access point device.

The is a non-provisional patent application based on the provisionalU.S. Patent Application Ser. No. 62/144,505, filed Apr. 8, 2015, thedisclosure of which is being incorporated herein by reference in itsentirety.

FIELD

The field of the invention relates to wireless short-range communicationand more particularly to provide interoperable mechanisms for efficientuse of frequency bands and channels in Wi-Fi networks.

BACKGROUND

Modern society has adopted, and is becoming reliant upon, wirelesscommunication devices for various purposes, such as, connecting users ofthe wireless communication devices with other users. Wirelesscommunication devices can vary from battery powered handheld devices tohousehold and/or commercial devices utilizing electrical network as apower source. Due to rapid development of the wireless communicationdevices a number of areas capable of enabling entirely new types ofcommunication applications have emerged.

Cellular networks facilitate communication over large geographic areas.These network technologies have commonly been divided by generations,starting in the late 1970s to early 1980s with first generation (1G)analog cellular telephones that provided baseline voice communications,to modern digital cellular telephones. GSM is an example of a widelyemployed 2G digital cellular network communicating in the 900 MHZ/1.8GHZ bands in Europe and at 850 MHz and 1.9 GHZ in the United States.While long-range communication networks, such as GSM, are awell-accepted means for transmitting and receiving data, due to cost,traffic and legislative concerns, these networks may not be appropriatefor all data applications.

Short-range communication technologies provide communication solutionsthat avoid some of the problems seen in large cellular networks.Bluetooth™ is an example of a short-range wireless technology quicklygaining acceptance in the marketplace. In addition to Bluetooth™ otherpopular short-range communication technologies include Bluetooth™ LowEnergy, IEEE 802.11 wireless local area network (WLAN), Wireless USB(WUSB), Ultra Wide-band (UWB), ZigBee (IEEE 802.15.4, IEEE 802.15.4a),and ultra-high frequency radio frequency identification (UHF RFID)technologies. All of these wireless communication technologies havefeatures that make them appropriate for various applications.

SUMMARY

Method, apparatus, and computer program product example embodimentsprovide interoperable mechanisms for efficient use of frequency bandsand channels in Wi-Fi networks.

According to an example embodiment of the invention, a method comprises:

receiving, by an access point device, a wireless request message from awireless device, requesting information on candidate wireless networks;

determining, by the access point device, whether the wireless device isassociated with the access point device; and

composing, by the access point device, a forwarding message to betransmitted by the access point device to a server, and including in theforwarding message an indication that the wireless device is associatedwith the access point device, if the wireless device is associated withthe access point device.

According to an example embodiment of the invention, a method comprises:

receiving, by the access point device, a response message from theserver, the response message including identifications of one or morecandidate wireless networks, if the forwarding message included theindication that the wireless device is associated with the access pointdevice; and

transmitting, by the access point device to the wireless device, theidentifications of one or more candidate wireless networks from thereceived response message.

According to an example embodiment of the invention, a method comprises:

receiving, by the access point device, a response message from theserver, the response message including minimal guidance to possiblecandidate wireless networks, if the forwarding message does not includedan indication that the wireless device is associated with the accesspoint device; and

transmitting, by the access point device, information from the receivedresponse message, to the wireless device.

According to an example embodiment of the invention, a method comprises:

determining, by the access point device, whether the wireless device isauthenticated with the access point device; and

including, by the access point device, in the forwarding message, anidentification of the wireless device and an indication whether thewireless device is authenticated with the access point device.

According to an example embodiment of the invention, a method comprises:

wherein the server is an access network query protocol server.

According to an example embodiment of the invention, a method comprises:

wherein the forwarding message further includes at least one of a MACaddress of the wireless device and a subscription identifier related tothe wireless device.

According to an example embodiment of the invention, a method comprises:

wherein the response message includes an indication of which candidatewireless network offers a best wireless connection for the wirelessdevice.

According to an example embodiment of the invention, an apparatuscomprises:

at least one processor;

at least one memory including computer program code;

the at least one memory and the computer program code configured to,with the at least one processor, cause the apparatus at least to:

receive a wireless request message from a wireless device, requestinginformation on candidate wireless networks;

determine whether the wireless device is associated with the apparatus;and

compose a forwarding message to be transmitted by the apparatus to aserver, and including in the forwarding message an indication that thewireless device is associated with the apparatus, if the wireless deviceis associated with the apparatus.

According to an example embodiment of the invention, an apparatuscomprises:

the at least one memory and the computer program code configured to,with the at least one processor, cause the apparatus at least to:

receive a response message from the server, the response messageincluding identifications of one or more candidate wireless networks, ifthe forwarding message included the indication that the wireless deviceis associated with the apparatus; and

transmit to the wireless device, the identifications of one or morecandidate wireless networks from the received response message.

According to an example embodiment of the invention, a computer programproduct comprising computer executable program code recorded on acomputer readable non-transitory storage medium, the computer executableprogram code comprising:

code for receiving, by an access point device, a wireless requestmessage from a wireless device, requesting information on candidatewireless networks;

code for determining, by the access point device, whether the wirelessdevice is associated with the access point device; and

code for composing, by the access point device, a forwarding message tobe transmitted by the access point device to a server, and including inthe forwarding message an indication that the wireless device isassociated with the access point device, if the wireless device isassociated with the access point device.

According to an example embodiment of the invention, a method comprises:

receiving, by a server, a forwarding message from an access pointdevice, including an indication whether a wireless device is associatedwith the access point device, the access point device having receivedfrom the wireless device, a wireless request message requestinginformation on candidate wireless networks;

accessing, by the server, information on available wireless networks inresponse to the forwarding message, if the forwarding message includedan indication that the wireless device is associated with the accesspoint device; and

transmitting, by the server, a response message to the access pointdevice, the response message including identifications of one or morecandidate wireless networks, in response to the forwarding message, ifthe forwarding message included an indication that the wireless deviceis associated with the apparatus.

According to an example embodiment of the invention, a method comprises:

transmitting, by the server, a response message to the access point, theresponse message listing candidate networks based on load balancingamong the available networks, if the forwarding message included theindication that the wireless device is associated with the access pointdevice.

According to an example embodiment of the invention, a method comprises:

transmitting, by the server, a response message to the access point, theresponse message including minimal guidance to possible candidatewireless networks, if the forwarding message does not included anindication that the wireless device is associated with the access pointdevice.

According to an example embodiment of the invention, a method comprises:

receiving, by the server, in the forwarding message, an identificationof the wireless device and an indication whether the wireless device isauthenticated with the access point device.

According to an example embodiment of the invention, a method comprises:

wherein the server is an access network query protocol server.

According to an example embodiment of the invention, a method comprises:

wherein the forwarding message further includes at least one of a MACaddress of the wireless device and a subscription identifier related tothe wireless device.

According to an example embodiment of the invention, a method comprises:

wherein the response message includes an indication of which candidatewireless network offers a best wireless connection for the wirelessdevice.

According to an example embodiment of the invention, an apparatuscomprises:

at least one processor;

at least one memory including computer program code;

the at least one memory and the computer program code configured to,with the at least one processor, cause the device at least to:

receive a forwarding message from an access point device, including anindication whether a wireless device is associated with the access pointdevice, the access point device having received from the wirelessdevice, a wireless request message requesting information on candidatewireless networks;

access information on available wireless networks in response to theforwarding message, if the forwarding message included an indicationthat the wireless device is associated with the access point device; and

transmit a response message to the access point device, the responsemessage including identifications of one or more candidate wirelessnetworks, in response to the forwarding message, if the forwardingmessage included an indication that the wireless device is associatedwith the apparatus.

According to an example embodiment of the invention, an apparatuscomprises:

the at least one memory and the computer program code configured to,with the at least one processor, cause the device at least to:

transmit a response message to the access point, the response messageincluding identifications of one or more available wireless networks, ifthe forwarding message included the indication that the wireless deviceis associated with the access point device.

According to an example embodiment of the invention, a computer programproduct comprising computer executable program code recorded on acomputer readable, non-transitory storage medium, the computerexecutable program code, when executed by a computer processor,comprising:

code for receiving, by a server, a forwarding message from an accesspoint device, including an indication whether a wireless device isassociated with the access point device, the access point device havingreceived from the wireless device, a wireless request message requestinginformation on candidate wireless networks;

code for accessing, by the server, information on available wirelessnetworks in response to the forwarding message, if the forwardingmessage included an indication that the wireless device is associatedwith the access point device; and

code for transmitting, by the server, a response message to the accesspoint device, the response message including identifications of one ormore candidate wireless networks, in response to the forwarding message,if the forwarding message included an indication that the wirelessdevice is associated with the apparatus.

DESCRIPTION OF THE FIGURES

FIG. 1 illustrates an example wireless network of an access networkquery (ANQP) protocol server that receives status reports from severalaccess point devices over a backbone network, each managing a respectivewireless network. Each access point device reports its status to theANQP server, such as message traffic load, bit error rate, responsetimes, and other performance metrics and services and applicationsavailable on its wireless network, which the ANQP server may store forcharacterizing each available network, in accordance with at least oneembodiment of the present invention.

FIG. 1A illustrates the example wireless network of FIG. 1, wherein awireless device (STA) is associated to an access point device. Thewireless device transmits to the access point device, a wireless ANQPrequest message that includes a BSS query, requesting information oncandidate wireless networks, in accordance with at least one embodimentof the present invention.

FIG. 1B illustrates the example wireless network of FIG. 1A, wherein theaccess point device determines whether the requesting wireless device isassociated and authenticated with the access point device. The accesspoint device composes a BSS query forwarding message that includesinformation from the ANQP the wireless request message. If the wirelessdevice is associated to and authenticated to the access point device,then the access point will include in the forwarding message, anindication that the wireless device is associated with the access pointdevice. The indication may be the state of the wireless device STA_STATEand the identity of the wireless device STA_ID. The figure shows theaccess point transmitting the BSS query forwarding message over abackbone network to the ANQP server, and including in the forwardingmessage the indication that the wireless device is associated with theaccess point device, in accordance with at least one embodiment of thepresent invention.

FIG. 1C illustrates the example wireless network of FIG. 1B, wherein theANQP server accesses information on candidate wireless networks inresponse to the BSS query forwarding message, if the BSS queryforwarding message includes an indication that the wireless device isassociated with the access point device. The figure shows the ANQPserver transmitting a BSS candidate list response message over abackbone network to the access point device, the BSS candidate listresponse message including identifications of one or more candidatewireless networks, in response to the BSS query forwarding message, ifthe BSS query forwarding message included an indication that thewireless device is associated to the access point, in accordance with atleast one embodiment of the present invention.

FIG. 1D illustrates the example wireless network of FIG. 1C, wherein theaccess point device transmits to the wireless device, an ANQP responsethat includes the BSS candidate list identifying one or more candidatewireless networks, as set forth in the received BSS candidate listresponse message, in accordance with at least one embodiment of thepresent invention.

FIG. 2A illustrates the example wireless network of FIG. 1, wherein awireless device (STA) is not associated to an access point device. Thewireless device transmits to the access point device, a wireless ANQPrequest message that includes a BSS query, requesting information oncandidate wireless networks, in accordance with at least one embodimentof the present invention.

FIG. 2B illustrates the example wireless network of FIG. 2A, wherein theaccess point device determines that the requesting wireless device isnot associated and authenticated with the access point device. Theaccess point device composes a BSS query forwarding message that doesnot include any indication of whether the wireless device is or is notassociated with the access point. The figure shows the access pointtransmitting the BSS query forwarding message over a backbone network tothe ANQP server, without any indication of whether the wireless deviceis or is not associated with the access point, in accordance with atleast one embodiment of the present invention.

FIG. 2C illustrates the example wireless network of FIG. 2B, wherein theANQP server receives the BSS query forwarding message and does not readany indication of whether the wireless device is or is not associatedwith the access point. Without any such indication, the ANQP serverassumes that the wireless device is not associated with the accesspoint, and thus processes the request accordingly. The ANQP servertransmits to the access point over a backbone network, a minimal orlimited guidance to possible BSS message concerning candidate wirelessnetworks, in accordance with at least one embodiment of the presentinvention.

FIG. 2D illustrates the example wireless network of FIG. 2C, wherein theaccess point device transmits to the wireless device, an ANQP responsethat includes the minimal or limited guidance to possible BSS messageconcerning candidate wireless networks, as set forth in the received BSScandidate list response message, in accordance with at least oneembodiment of the present invention.

FIG. 3A illustrates an example frame format of the wireless ANQP requestmessage that includes a BSS query originated by the wireless device(STA) that is associated to the access point device, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention.

FIG. 3B illustrates an example frame format of the backbone networkframe for the BSS query forwarding message transmitted by the accesspoint transmitting the to the ANQP server, including the indication thatthe wireless device is associated with the access point device and theBSS query originated by the wireless device, in accordance with at leastone embodiment of the present invention.

FIG. 3C illustrates an example frame format of the backbone networkframe for the BSS candidate list response message transmitted by theANQP server to the access point device, in response to the BSS queryoriginated by the wireless device (STA) that is associated to the accesspoint device, in accordance with at least one embodiment of the presentinvention.

FIG. 3D illustrates an example frame format of the wireless ANQPresponse message that includes the BSS candidate list identifying one ormore candidate wireless networks, in response to the BSS queryoriginated by the wireless device (STA) that is associated to the accesspoint device, in accordance with at least one embodiment of the presentinvention.

FIG. 4A illustrates an example frame format of the wireless ANQP requestmessage that includes a BSS query originated by the wireless device(STA) that is unassociated to the access point device, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention.

FIG. 4B illustrates an example frame format of the backbone networkframe for the BSS query forwarding message transmitted by the accesspoint transmitting the to the ANQP server, including the BSS queryoriginated by the wireless device (STA), and which does not include anyindication of whether the wireless device is or is not associated withthe access point, in accordance with at least one embodiment of thepresent invention.

FIG. 4C illustrates an example frame format of the backbone networkframe for the minimal or limited guidance to possible BSS messageconcerning candidate wireless networks, in response to the BSS queryoriginated by the wireless device (STA) that is unassociated to theaccess point device, in accordance with at least one embodiment of thepresent invention.

FIG. 4D illustrates an example frame format of the wireless ANQPresponse message that includes the minimal or limited guidance topossible BSS message concerning candidate wireless networks, in responseto the BSS query originated by the wireless device (STA) that isunassociated to the access point device, in accordance with at least oneembodiment of the present invention.

FIG. 5A illustrates an example flow diagram of operational steps in theaccess point device, in accordance with at least one embodiment of thepresent invention.

FIG. 5B illustrates an example flow diagram of operational steps in theANQP server, in accordance with at least one embodiment of the presentinvention.

FIG. 6 illustrates an example network diagram and functional blockdiagram of the access point device and the ANQP server, in accordancewith at least one embodiment of the present invention.

FIG. 7 illustrates an example embodiment of the invention, whereinexamples of removable storage media are shown, based on magnetic,electronic and/or optical technologies, such as magnetic disks, opticaldisks, semiconductor memory circuit devices and micro-SD memory cards(SD refers to the Secure Digital standard) for storing data and/orcomputer program code as an example computer program product, inaccordance with an example embodiment of the invention.

DISCUSSION OF EXAMPLE EMBODIMENTS OF THE INVENTION

This section is organized into the following topics:

A. WLAN Communication Technology

B. STA Identification And State Information To ANQP Server

A. WLAN Communication Technology

The IEEE 802.11 standard specifies methods and techniques of anexemplary wireless local area network (WLAN) operation. Examples includethe IEEE 802.11b and 802.11g wireless local area network specifications,which have been a staple technology for traditional WLAN applications inthe 2.4 GHz ISM band. The various amendments to the IEEE 802.11 standardwere consolidated for IEEE 802.11a, b, d, e, g, h, i, j, k, n, r, s, u,v, and z protocols, into the base standard IEEE 802.11-2012, WirelessMedium Access Control (MAC) and Physical Layer (PHY) Specifications,February 2012. Since then, emerging broadband applications havestimulated interest in developing very high-speed wireless networks forshort range communication, for example, the planned IEEE 802.11ac, andthe planned IEEE 802.11ad WLAN specifications that are to provide a veryhigh throughput in various frequency bands. Applications of these IEEE802.11 standards include products such as consumer electronics,telephones, personal computers, and access points for both for home andoffice.

1. IEEE 802.11 MAC Frames and Information Elements

There are three major types of medium access control (MAC) frames in theIEEE 802.11 protocol: the management frame, the control frame, and thedata frame. Management frames provide management services. Data framescarry payload data. Control frames assist in the delivery of dataframes. Each of these types of MAC frame consists of a MAC header, aframe body, and a frame check sequence (FCS). The header containscontrol information used for defining the type of 802.11 MAC frame andproviding information necessary to process the MAC frame. The frame bodycontains the data or information included in either management type ordata type frames. The frame check sequence is a value representing acyclic redundancy check (CRC) over all the fields of the MAC header andthe frame body field.

Management frames are used to provide management services that may bespecified by variable-length fields called information elements includedin the MAC frame body. An information element includes three fields: itsfunction is identified by an element ID field, its size is provided by alength field, and the information to deliver to the recipient isprovided in a variable-length information field.

2. IEEE 802.11 Beacon, Probe Request and Response

a. Beacon

The beacon frame is a management frame that is transmitted periodicallyto allow wireless devices to locate and identify a network. The beaconframe includes the fields: timestamp, beacon interval, and capabilityinformation. The timestamp contains the value of the device'ssynchronization timer at the time that the frame was transmitted. Thecapability information field is a 16-bit field that identifies thecapabilities of the device. The information elements in a beacon frameare the service set identifier (SSID), the supported rates, one or morephysical parameter sets, an optional contention-free parameter set, andan optional traffic indication map.

i. Infrastructure BSS Networks with an Access Point

In an Infrastructure BSS Networks with an Access Point, beacon framesare used for enabling wireless devices to establish and maintain orderlycommunications. The beacon frames are transmitted by the Access Pointsat regular intervals and include a frame header and a body with variousinformation, including a Service Set Identifier (SSID) identifying thename of a specific WLAN and a beacon interval specifying the intendedtime interval between two beacon transmissions. One important purpose ofthe beacon frames is to inform the wireless devices about the presenceof an Access Point in the area. The access point in an infrastructurebasic service set (BSS) IEEE 802.11 WLAN network, may be a central hubthat relays all communication between the mobile wireless devices (STAs)in an infrastructure BSS. If a STA in an infrastructure BSS wishes tocommunicate a frame of data to a second STA, the communication may taketwo hops. First, the originating STA may transfer the frame to the AP.Second, the AP may transfer the frame to the second STA. In aninfrastructure BSS, the AP may transmit beacons or respond to probesreceived from STAs. After a possible authentication of a STA that may beconducted by the AP, an association may occur between the AP and a STAenabling data traffic to be exchanged with the AP. The Access Point inan Infrastructure BSS may bridge traffic out of the BSS onto adistribution network. STAs that are members of the BSS may exchangepackets with the AP.

ii. Ad Hoc IBSS Networks

The first ad hoc wireless device to become active establishes an IBSSand starts sending beacons to inform the other wireless devices aboutthe presence of an ad hoc network in the area. Other ad hoc wirelessdevices may join the network after receiving a beacon and accepting theIBSS parameters, such as the beacon interval, found in the beacon frame.

Each wireless device that joins the ad hoc network may send a beaconperiodically if it doesn't hear a beacon from another device within ashort random delay period after the beacon is supposed to be sent. If awireless device doesn't hear a beacon within the random delay period,then the wireless device assumes that no other wireless devices areactive in the ad hoc network and a beacon needs to be sent.

A beacon signal is periodically transmitted from the ad hoc network. Thebeacon frame is transmitted periodically and includes the address of thesending device.

b. Probe Request

The probe request frame is a management frame that is transmitted by awireless device attempting to quickly locate a wireless LAN. It may beused to locate independent basic service sets (IBSSs), infrastructurebasic service sets (BSSs) or mesh basic service sets (MBSSs) only or anyof them. It may be used to locate a wireless LAN with a particular SSIDor to locate any wireless LAN. The probe request frame may contain aservice attribute request.

For active scans, the wireless device eit her broadcasts or unicasts aprobe request on the channel it is scanning. It may set the SSID in theprobe request to a wildcard SSID or to a specific SSID value. It may setthe BSSID in the probe request a wildcard BSSID or to a specific BSSIDvalue. With these options the wireless device can look for any SSID orBSSID, any representative of a specific SSID or a specific BSSID. Thewireless device will add any received beacons or probe responses to acached basic service set identifier (BSSID) scan list. For passivescans, the wireless device does not send a probe request, but instead,listens on a channel for a period of time and adds any received beaconsor probe responses to its cached BSSID scan list. The wireless devicemay scan both infrastructure and ad hoc networks, regardless of thecurrent setting of its network mode. The wireless device may use eitherthe active or passive scanning methods, or a combination of bothscanning methods. The wireless device performs the scan across all thefrequency channels and bands that it supports.

i. Infrastructure BSS Networks with an Access Point

The wireless device may transmit a probe request and receive a proberesponse from the access point AP in the BSS. The probe request istransmitted by a wireless device to obtain information from anotherstation or access point. For example, a wireless device may transmit aprobe request to determine whether a certain access point is available.In the infrastructure BSS, only the AP responds to probe requests. Theprobe response sent back by the AP contains a timestamp, beaconinterval, and capability information. It also includes the Service SetIdentity (SSID) of the BSS, supported rates, and PHY parameters. Thewireless device STA may learn that the access point AP will accept theSTA's credentials.

The rules applied by the scanning wireless device (i.e. scanner) and theAPs with active scanning are as follows:

1) Scanner (for each channel to be scanned):

-   -   a. Transmit a probe request frame (or multiple of thereof) with        the SSID and the BSSID fields set as per the scan command;    -   b. Reset ProbeTimer to zero and start it upon the probe request        transmission;    -   c. If nothing is detected (any signal with high enough energy)        on the channel before the ProbeTimer reaches MinChannelTime        (a.k.aMin_Probe_Response_Time), then go to scan the next channel        (if any), else when the ProbeTimer reaches MaxChannelTime (i.e.,        Max_Probe_Response_Time), process all received probe responses        and go to scan the next channel (if any).

2) APs:

a. An AP shall respond with a probe response only if:

-   -   i. The Address 1 field in the probe request frame is the        broadcast address or the specific MAC address of the AP; and    -   ii. The SSID in the probe request is the wildcard SSID, the SSID        in the probe request is the specific SSID of the AP, or the        specific SSID of the AP is included in the SSID list element of        the probe request, or the Address 3 field in the probe request        is the wildcard BSSID or the BSSID of the AP.

b. Some further conditions may be set as well for the generation of aprobe response.

In general, the probe request transmitter specifies the conditions thatwireless devices need to meet in order to respond to with a proberesponse. All wireless devices that fulfill the condition try to send aprobe response frame. The active scanning mechanism defines thesignaling.

ii. Ad Hoc IBSS Networks

The effect of receiving a probe request is to cause the wireless deviceto respond with a probe response if the conditions indicated in theprobe request are met. When a wireless device arrives within thecommunication range of any member of an ad hoc network, its proberequest frame inquiry signals are answered by a member of the ad hocnetwork detecting the inquiry. A device in an ad hoc network thatbroadcasted the latest beacon in the network responds to the proberequest frame inquiry signals with a probe response containing theaddress of the responding device. The probe response frame also includesthe timestamp, beacon interval, capability information, informationelements of the SSID, supported rates, one or more physical parametersets, the optional contention-free parameter set, and the optional adhoc network parameter set.

Once a device has performed an inquiry that results in one or more adhoc network descriptions, the device may choose to join one of the adhoc networks. The joining process may be a purely local process thatoccurs entirely internal to the wireless device. There may be noindication to the outside world that a device has joined a particular adhoc network. Joining an ad hoc network may require that all of thewireless device's MAC and physical parameters be synchronized with thedesired ad hoc network. To do this, the device may update its timer withthe value of the timer from the ad hoc network description, modified byadding the time elapsed since the description was acquired. This willsynchronize the timer to the ad hoc network. The BSSID of the ad hocnetwork may be adopted, as well as the parameters in the capabilityinformation field. Once this process is complete, the wireless devicehas joined the ad hoc network and is ready to begin communicating withthe devices in the ad hoc network.

c. Probe Response

The probe response sent back by a wireless device that met theconditions set by the received probe request contains a timestamp,beacon interval, and capability information. It also includes theService Set Identity (SSID) of the BSS, supported rates, and PHYparameters.

According to an example embodiment, standard spacing intervals aredefined in the IEEE 802.11 specification, which delay a station's accessto the medium, between the end of the last symbol of the previous frameand the beginning of the first symbol of the next frame. The shortinterframe space (SIFS), the shortest of the interframe spaces, mayallow acknowledgement (ACK) frames and clear to send (CTS) frames tohave access to the medium before others. The longer duration distributedcoordination function (DCF) interframe space (IFS) or DIFS interval maybe used for transmitting data frames and management frames.

According to an example embodiment, after the channel has been released,IEEE 802.11 and before a probe response is transmitted, wireless devicesnormally employ a spectrum sensing capability during the SIFS intervalor DIFS interval, to detect whether the channel is busy. A carriersensing scheme may be used wherein a node wishing to transmit a proberesponse has to first listen to the channel for a predetermined amountof time to determine whether or not another node is transmitting on thechannel within the wireless range. If the channel is sensed to be idle,then the node may be permitted to begin the transmission process. If thechannel is sensed to be busy, then the node may delay its transmissionof a probe response for a random period of time called the backoffinterval. In the DCF protocol used in IEEE 802.11 networks, thestations, on sensing a channel idle for DIFS interval, may enter thebackoff phase with a random value between 0 and CW min. The backoffcounter may be decremented from this selected value as long as thechannel is sensed idle for a predetermined time interval. After everyreceived frame one may however wait for a DIFS before sensing thechannel status and resuming backoff counter update.

3. Access Network Query Protocol (ANQP)

Access Network Query Protocol (ANQP) is provided by the IEEE 802.11Standard as an interworking protocol to permit a wireless device toexchange information with an external network, to enable the selectionof networks to connect to, and to enable access to emergency services.Access Network Query Protocol (ANQP) is part of Generic AdvertisementService (GAS). Generic Advertisement Service (GAS) is specified toenable mobile wireless devices or STAs to discover the availability ofinformation related to desired network services. For example, the GASenables discovery of information about services provided in aninfrastructure basic service set, information about local accessservices, information from available Subscription Service Providers(SSP) and/or Subscription Service Provider Networks (SSPNs) or otherexternal networks. GAS enables a wireless device to transmit a genericadvertisement service initial request frame to request information aboutnetwork services from access points and it enables an access point touse a generic container, a GAS initial response frame, to advertiseinformation about network services over an IEEE 802.11 network.

Network discovery may be based on the generic advertising service (GAS)query request and GAS query response exchange that ensures access to anetwork with the desired characteristics is available to the scanningmobile wireless device (STA). The GAS query protocol enables morecomprehensive information discovery and allows the requesting STA toinitiate queries to Internet and beyond the responding STA. Networkparameters are queried by an access point from an Access Network QueryProtocol (ANQP) Server, also referred to herein as a GAS applicationserver, external to the basic service set (BSS) of the access point. Thequeries are initiated and the response is reported through GAS Queryresponse frame transmitted by the access point and GAS Query responseframe received by the STA. GAS Query requests may be broadcast by theSTA to a plurality of access points connected to a BSS network and eachreceiving access point may be required to respond to the STA with a GASquery response. An access point may deliver a received GAS request tothe ANQP) Server, which may determine whether the service request can befulfilled by the network.

A generic advertising service (GAS) query request and GAS query responseis delivered in a MAC management frame. The frame body includes anaction field that indicates that a GAS query request or GAS response isembedded in the frame body. An advertisement information protocolelement field specifies an access network query protocol (ANQP) element.

The Access Network Query Protocol (ANQP) is a query and responseprotocol that defines services offered by an access point (AP). The ANQPcommunicates data useful in a mobile device's network selection process,including the IP addresses available at the AP. The ANQP response mayinclude a description of the services available, without the inquiringSTA having to join a network. ANQP elements are assigned a unique ANQPInformation ID, which defines the response condition of the GAS initialrequest sent from the mobile wireless device STA, such as ANQP QueryList, ANQP Capability List, Network authentication Type information, IPAddresses Type Availability information, etc. The information field ofthe ANQP elements contains the requested data sent from the access pointAP, which may be in one or multiple ANQP info elements.

Network parameters are queried by an access point from an Access NetworkQuery Protocol (ANQP) Server. The ANQP Server may be external to thebasic service set (BSS) of the access point. The queries are initiatedby a STA to the AP with a GAS Query request frame and are reported bythe AP to the STA with a GAS Query response frame. An access point maydeliver a received GAS request to the ANQP Server over a backbonenetwork, or optionally over a wireless network, which may determinewhether the service request can be fulfilled by the network.

4. BSS Transition Management

BSS transition management is provided by the IEEE 802.11 Standard toenable an AP to request associated STAs to transition to a specific AP,or to indicate to a STA a set of preferred APs, due to network loadbalancing or BSS Termination. The BSS Transition Management Query frameuses the Action frame body format and is transmitted by a STA requestingor providing information on BSS transition candidate APs. The BSSTransition Management Request frame uses the Action frame body formatand is transmitted by an AP STA in response to a BSS TransitionManagement Query frame, or autonomously. The BSS Transition ManagementResponse frame uses the Action frame body format and is optionallytransmitted by a STA in response to a BSS Transition Management Requestframe.

The BSS Transition capability enables improved throughput, effectivedata rate and/or QoS for the aggregate of STAs in a network by shifting(via transition) individual STA traffic loads to more appropriate pointsof association within the ESS. In addition, the BSS Transitioncapability provides accounting session control information to a non-APSTA, which might be used to provide an alert to the non-AP STA's userthat their session is almost over and the STA will be disassociated fromthe ESS.

The BSS Transition Management Query, BSS Transition Management Request,BSS Transition Management Response frames provide a means and a protocolto exchange the information needed to enable an AP to inform associatedSTAs that the BSS will be terminated and to enable a network to manageBSS loads by influencing STA transition decisions. A STA may provideneighbor report information to its associated AP for BSSs that itconsiders to be transition targets. This information enables the AP torequest that the STA transition to a BSS that the STA also prefers.

BSS transition management query: A non-AP STA supporting BSS transitionmanagement may request a BSS Transition Candidate list by sending a BSSTransition Management Query frame to its associated AP if the associatedAP indicates that it supports the BSS Transition Capability in theExtended Capabilities element. A non-AP STA should include the BSSTransition Candidate List Entries field in the BSS Transition ManagementQuery frame to indicate the non-AP STA's transition preferences. The BSSTransition Candidate List Entries field of a BSS Transition ManagementQuery frame contains zero or more Neighbor Report elements describingthe non-AP STA's preferences for target BSS candidates.

BSS transition management request: An AP that supports BSS transitionmanagement shall respond to a BSS Transition Management Query frame witha BSS Transition Management Request frame. The AP may send anunsolicited BSS Transition Management Request frame to a non-AP STA atany time if the non-AP STA indicates that it supports the BSS TransitionManagement capability in the Extended Capabilities element. The AP maytransmit a group addressed BSS Transition Management Request frame toassociated non-AP STAs if all associated non-AP STAs support the BSSTransition Management capability. When the BSS Transition ManagementRequest frame is transmitted as a group addressed frame, a receivingnon-AP STA shall not respond with a BSS Transition Management Responseframe. A non-AP STA that supports BSS transition management shallrespond to an individually addressed BSS Transition Management Requestframe with a BSS Transition Management Response frame.

The AP shall include the BSS Transition Candidate List Entries field inthe BSS Transition Management Request frame if the AP has information inresponse to the BSS Transition Management Query frame. The BSSTransition Candidate List Entries field contains one or more NeighborReport elements describing the preferences for target BSS candidates. APreference field value of 0 indicates that the BSS listed is an excludedBSS. The STA should refrain from associating to an AP corresponding toan excluded BSS. The Preference field values are used to establish therelative order of entries within the given list at the given time, andfor the given AP.

The values between 1 and 255 provide the indication of order, with 255indicating the most preferred BSS within the given candidate list,decreasing numbers representing decreasing preference relative only toentries with lower values of the Preference field, and equal numbersrepresenting equal preference. The Preference field value is only validbefore the Validity Interval has expired. The AP may include zero ormore subelements in the BSS Transition Candidate List Entries field.

Upon successful reception of a BSS Transition Management Query frame orBSS Transition Response frame from a non-AP STA that contains a nonemptyBSS Transition Candidate List Entries field, the AP should include atleast one BSS candidate from that list with a nonzero Preference fieldvalue in the BSS Transition Candidate List Entries field of anysubsequent BSS Transition Management Request frame with the PreferredCandidate List Included field set to 1 transmitted to the non-AP STA.The AP shall evaluate the BSSs indicated in the BSS Transition CandidateList Entries field in the latest BSS Transition Management Query frameor BSS Transition Management Response frame received from the non-AP STAas BSS transition candidate(s) for the non-AP STA. The means by whichthe AP evaluates and determines BSS transition candidates is outside thescope of this specification.

A non-AP STA that receives the Abridged bit with a value of 1 shalltreat any BSSID in the current ESS that does not appear in the BSSTransition Candidate List as if it were present in the BSS TransitionCandidate List with a Preference value of 0.

B. STA Identification And State Information To ANQP Server

When an access point receives a query from an associated andauthenticated STA for information on candidate wireless networks, theexisting IEEE 802.11 standard does not enable the AP to forward thequery as an ANQP query to an ANQP server, but instead, provides thealternative BSS Transition Management Query as the protocol for suchuse. The Standard provides the ANQP query for use by an access point toforward queries only from unassociated STAs.

The problem with the ANQP based approach is that it is designed forcases in which a requesting STA is in the unassociated/unauthenticatedstate. When an AP receives an ANQP request from a STA, it passes therequest to the ANQP server to which it is connected and the ANQP serverprocesses the request assuming that the STA is in theunassociated/unauthenticated state. Typically service request processingdepends on whether the request originates from a reliable source(authenticated/associated STA) or from an unknown/unreliable source(unauthenticated/unassociated STA). This is also case with BSS selectionrequests. On the other hand, the objective is to have means to give oneand same guidance on BSS selection to an authenticated and associatedSTA regardless of whether the STA uses the ANQP based protocol or theBSS Transition Management protocol.

It would be beneficial to have the same type of ANQP query and ANQPresponse for both associated STAs, as well as unassociated STAs.

In accordance with an example embodiment of the invention, when an APreceives from an associated and authenticated STA, an ANQP request thatrelates to candidate wireless networks, the AP forwards a BSS candidatequery to the ANQP server and indicates to the server that the request isoriginated by an authenticated and associated STA. The AP may alsoprovide further detailed information about the originating STA, such asthe MAC address of the STA, or a subscription identifier related to theoriginating STA.

In accordance with an example embodiment of the invention, when an ANQPserver that receives from the AP, the BSS candidate query on candidatewireless networks, the ANQP server checks whether the query containsinformation about the state, and optionally the identification, of theSTA that originated the query. Those BSS candidate queries that indicatethat they are originated by associated/authenticated STAs, are processedseparately from other BSS candidate queries that indicate that they areoriginated by unassociated/unauthenticated STAs. If there is noindication on the state in the BSS candidate query, the query isprocessed as if the query were originated by anunassociated/unauthenticated STA.

FIG. 1 illustrates an example wireless network of an access networkquery (ANQP) protocol server 120 that receives status reports fromseveral wireless access point devices 110A, 110B, and 110C, eachmanaging a respective wireless network. Each access point device reportsits status to the ANQP server, such as message traffic load, bit errorrate, response times, and other performance metrics and services andapplications available on its wireless network, which the ANQP servermay store for characterizing each available network, in accordance withat least one embodiment of the present invention. Additionally, the ANQPserver maintains information on location of each access point device orat least their relative position with respect to each other, in order todetermine which access point devices are neighbors to each other. TheANQP server may use all this information about characteristics andrelative positions of each available network, when giving guidance onBSS selection in the form of candidate wireless networks, in accordancewith at least one embodiment of the present invention.

FIG. 1A illustrates the example wireless network of FIG. 1, wherein awireless device (STA) 100 is associated to an access point device 110A.The wireless device transmits to the access point device, a wirelessANQP request message 130 that includes a BSS query, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention. An example of the wireless ANQPrequest message 130 is shown in greater detail in FIG. 3A.

FIG. 1B illustrates the example wireless network of FIG. 1A, wherein theaccess point device 110A determines whether the requesting wirelessdevice 100 is associated and authenticated with the access point device.The access point device composes a BSS query forwarding message 132 thatincludes information from the ANQP wireless request message 130. If thewireless device 100 is associated to and authenticated to the accesspoint device 110A, then the access point will include in the forwardingmessage 132, an indication that the wireless device is associated withthe access point device. The indication may be the state of the wirelessdevice STA_STATE and the identity of the wireless device STA_ID. Thefigure shows the access point 110A transmitting the BSS query forwardingmessage 132 to the ANQP server 120 over the backbone network 60, andincluding in the forwarding message the indication that the wirelessdevice is associated with the access point device, in accordance with atleast one embodiment of the present invention. The AP may also providefurther detailed information about the originating STA, such as the MACaddress of the STA, or a subscription identifier related to theoriginating STA. An example of the backbone network frame for the BSSquery forwarding message 132 is shown in greater detail in FIG. 3B.

In an example embodiment of the invention, a BSS candidate query 132from an AP to the ANQP server 120 has an optional element/set of fields,which are present in the message 132 only when the BSS candidate queryis transmitted due to an ANQP query related to BSS selection receivedfrom an associated/authenticated STA. On default all ANQP queries 130transmitted to an AP by a STA that has no association/authenticationrelationship to the AP, are assumed by the ANQP server 120 to beunassociated. Thus, a BSS candidate query 132 that has no element/set offields that are to indicate the STA state and optionally identity, meansthat the query 132 is due to a request from anunassociated/unauthenticated STA.

FIG. 1C illustrates the example wireless network of FIG. 1B, wherein theANQP server 120 accesses information on candidate wireless networks inresponse to the BSS query forwarding message 132, if the BSS queryforwarding message 132 includes an indication that the wireless device100 is associated with the access point device 110A. The figure showsthe ANQP server 120 transmitting a BSS candidate list response message134 over the backbone network 60 to the access point device 110A, theBSS candidate list response message 134 including identifications of oneor more candidate wireless networks, in response to the BSS queryforwarding message 132, if the BSS query forwarding message 132 includedan indication that the wireless device 100 is associated to the accesspoint 110A, in accordance with at least one embodiment of the presentinvention. An example of the backbone network frame for the BSScandidate list response message 134 is shown in greater detail in FIG.3C.

An ANQP server 120 processes BSS candidate queries 132 fromassociated/authenticated STAs separately and differently from those thatare from unassociated/unauthenticated STAs:

a. Queries from associated/authenticated STAs are always processed firstand with higher priority than queries from unassociated/unauthenticatedSTAs. In an example embodiment of the invention, a query from anassociated/authenticated STA is always processed before any queries fromunassociated/unauthenticated STAs. Reception of a query from anassociated/authenticated STA puts any processing on queries fromunassociated/unauthenticated STAs on hold.

b. Associated/authenticated STAs are provided BSS candidates that offerthe most suitable (i.e. best) wireless connection and QoE for the STA.For unassociated/unauthenticated STAs the ANQP server 120 provides thoseBSSs that provide basic connectivity and that may be dedicated BSSs forinitial connection setup. The ANQP server 120 has quite detailedknowledge about the services and applications anassociated/authenticated STA runs over the Wi-Fi connection and can thusdetermine which of the available BSSs are the most suitable for the STAand its services and applications. One may, as an example, estimate bitrate and delay requirements and compare them against estimatedperformance with each available BSS. Additionally, one may consider loadof each available BSS when forming the BSS candidate list that theserver will finally send to the AP for further delivery to theoriginating STA. In an example embodiment of the invention, the AP 110Aprovides service/application level information (e.g. service/applicationtype, bit rate requirements, delay requirements) to the ANQP server 120in a BSS candidate query related to an associated/authenticated STA. Incase of a query related to an unassociated/unauthenticated STA, thenetwork has no knowledge about the service/application or itsrequirements on the connectivity and thus the ANQP server 120 has nomeans to consider them when forming the list of BSS candidates. One mayhave reserved some dedicated BSSs for initial connection setup phase oralternatively one may use a strategy to guide new STAs to the BSSs, inwhich they are estimated to have the least effect on the existingconnections. In an example embodiment of the invention, the server maytransmit a response message 134 to the access point, listing candidatenetworks based on network load balancing among the candidate networks,if the forwarding message 132 included the indication that the wirelessdevice is associated with the access point device.

FIG. 1D illustrates the example wireless network of FIG. 1C, wherein theaccess point device 110A transmits to the wireless device, an ANQPresponse 136 that includes the BSS candidate list identifying one ormore candidate wireless networks, as set forth in the received BSScandidate list response message 134, in accordance with at least oneembodiment of the present invention. The wireless device 100 may thenselect one of the listed candidate wireless networks for reassociation,based on their available services, applications, proximity, operatingband, or other characteristics. An example of the ANQP response 136 isshown in greater detail in FIG. 3D.

FIG. 2A illustrates the example wireless network of FIG. 1, wherein awireless device (STA) 100 is not associated to an access point device110A. The wireless device transmits to the access point device, awireless ANQP request message 230 that includes a BSS query, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention. An example of the ANQP requestmessage 230 is shown in greater detail in FIG. 4A. Note that the formatof the ANQP request message 230 is the same as the format for the ANQPrequest message 130 of FIG. 3A, so that the same type of ANQP query isused for both associated STAs, as well as unassociated STAs.

FIG. 2B illustrates the example wireless network of FIG. 2A, wherein theaccess point device 110A determines that the requesting wireless device100 is not associated and authenticated with the access point device.The access point device composes a BSS query forwarding message 232 thatdoes not include any indication of whether the wireless device 100 is oris not associated with the access point 110A. The figure shows theaccess point transmitting the BSS query forwarding message 232 over thebackbone network 60 to the ANQP server 120, without any indication ofwhether the wireless device is or is not associated with the accesspoint, in accordance with at least one embodiment of the presentinvention.

FIG. 2C illustrates the example wireless network of FIG. 2B, wherein theANQP server 120 receives the BSS query forwarding message 232 and doesnot read any indication of whether the wireless device is or is notassociated with the access point. Without any such indication, the ANQPserver 120 assumes that the wireless device 100 is not associated withthe access point 110A, and thus processes the request accordingly. TheANQP server 120 transmits to the access point over the backbone network60, a minimal or limited guidance to possible BSS message 234 concerningcandidate wireless networks, in accordance with at least one embodimentof the present invention. For unassociated/unauthenticated STAs the ANQPserver 120 provides those candidate BSSs that provide basic connectivityand that may be dedicated BSSs for initial connection setup.

FIG. 2D illustrates the example wireless network of FIG. 2C, wherein theaccess point device 110A transmits to the wireless device 100, an ANQPresponse 236 that includes the minimal or limited guidance to possibleBSS message concerning candidate wireless networks, as set forth in thereceived response message 234, in accordance with at least oneembodiment of the present invention. An example of the ANQP response 236is shown in greater detail in FIG. 4D. Note that the format of the ANQPresponse message 236 is the same as the format for the ANQP requestmessage 136 of FIG. 3D, so that the same type of ANQP response is usedfor both associated STAs, as well as unassociated STAs.

FIG. 3A illustrates an example frame format of the wireless ANQP requestmessage 130 that includes a BSS query originated by the wireless device(STA) that is associated to the access point device, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention. The information field 130 ofthe ANQP elements contains the requested data sent from the access pointAP. The BSS Query is located in the information field 310 of the ANQPelement 308, in the action field 304 of the frame body of the MACmanagement frame.

FIG. 3B illustrates an example frame format of the backbone networkframe for the BSS query forwarding message 132 transmitted by the accesspoint to the ANQP server, including the indication that the wirelessdevice is associated with the access point device and the BSS queryoriginated by the wireless device, in accordance with at least oneembodiment of the present invention. The indication that the wirelessdevice is associated with the access point device, is the information322 located in the information element 320 of the frame. The information322 includes the BSS query, the indication of the state that the STA isassociated and authenticated to the access point, and the ID of the STA.

FIG. 3C illustrates an example frame format of the backbone networkframe for the BSS candidate list response message 132 transmitted by theANQP server to the access point device, in response to the BSS queryoriginated by the wireless device (STA) that is associated to the accesspoint device, in accordance with at least one embodiment of the presentinvention. The BSS candidate list, is the information 326 located in theinformation element 324 of the frame.

FIG. 3D illustrates an example frame format of the wireless ANQPresponse message 136 that includes the BSS candidate list identifyingone or more candidate wireless networks, in response to the BSS queryoriginated by the wireless device (STA) that is associated to the accesspoint device, in accordance with at least one embodiment of the presentinvention. The ANQP response 136 may include a description of theservices available, without the inquiring STA having to join a network.The BSS Candidate List is located in the information field 310 of theANQP element 308, in the action field 304 of the frame body of the MACmanagement frame.

FIG. 4A illustrates an example frame format of the wireless ANQP requestmessage 230 that includes a BSS query originated by the wireless device(STA) that is unassociated to the access point device, requestinginformation on candidate wireless networks, in accordance with at leastone embodiment of the present invention. Note that the format of theANQP request message 230 is the same as the format for the ANQP requestmessage 130 of FIG. 3A, so that the same type of ANQP query is used forboth associated STAs, as well as unassociated STAs.

FIG. 4B illustrates an example frame format of the backbone networkframe for the BSS query forwarding message 232 transmitted by the accesspoint transmitting the to the ANQP server, including the BSS queryoriginated by the wireless device (STA), and which does not include anyindication of whether the wireless device is or is not associated withthe access point, in accordance with at least one embodiment of thepresent invention. The ANQP server 120 receives the BSS query forwardingmessage 232 and does not read any indication of whether the wirelessdevice is or is not associated with the access point. Without any suchindication, the ANQP server 120 assumes that the wireless device 100 isnot associated with the access point 110A, and thus processes therequest accordingly.

FIG. 4C illustrates an example frame format of the backbone networkframe for the minimal or limited guidance to possible BSS message 234concerning candidate wireless networks, in response to the BSS queryoriginated by the wireless device (STA) that is unassociated to theaccess point device, in accordance with at least one embodiment of thepresent invention.

FIG. 4D illustrates an example frame format of the wireless ANQPresponse message 236 that includes the minimal or limited guidance topossible BSS message concerning candidate wireless networks, in responseto the BSS query originated by the wireless device (STA) that isunassociated to the access point device, in accordance with at least oneembodiment of the present invention. Note that the format of the ANQPresponse message 236 is the same as the format for the ANQP requestmessage 136 of FIG. 3D, so that the same type of ANQP response is usedfor both associated STAs, as well as unassociated STAs.

FIG. 5A illustrates an example flow diagram 500 of operational steps inthe access point (AP) 110A, in accordance with at least one embodimentof the present invention. The steps of the flow diagram representcomputer code instructions stored in the device's RAM and/or ROM memory,which when executed by the device's central processing units (CPU),carry out the functions of the example embodiments of the invention. Thesteps may be carried out in another order than shown and individualsteps may be combined or separated into component steps. The flowdiagram has the following steps:

Step 502: receiving, by an access point device, a wireless requestmessage from a wireless device, requesting information on candidatewireless networks;

Step 504: determining, by the access point device, whether the wirelessdevice is associated with the access point device; and

Step 504: composing, by the access point device, a forwarding message tobe transmitted by the access point device to a server, and including inthe forwarding message an indication that the wireless device isassociated with the access point device, if the wireless device isassociated with the access point device.

FIG. 5B illustrates an example flow diagram 550 of operational steps inthe ANQP server 120, in accordance with at least one embodiment of thepresent invention. The steps of the flow diagram represent computer codeinstructions stored in the device's RAM and/or ROM memory, which whenexecuted by the device's central processing units (CPU), carry out thefunctions of the example embodiments of the invention. The steps may becarried out in another order than shown and individual steps may becombined or separated into component steps. The flow diagram has thefollowing steps:

Step 552: receiving, by a server, a forwarding message from an accesspoint device, including an indication whether a wireless device isassociated with the access point device, the access point device havingreceived from the wireless device, a wireless request message requestinginformation on candidate wireless networks;

Step 554: accessing, by the server, information on available wirelessnetworks in response to the forwarding message, if the forwardingmessage included an indication that the wireless device is associatedwith the access point device; and

Step 556: transmitting, by the server, a response message to the accesspoint device, the response message including identifications of one ormore candidate wireless networks, in response to the forwarding message,if the forwarding message included an indication that the wirelessdevice is associated with the access point.

FIG. 6 illustrates an example network diagram and functional blockdiagram of the access point device 110A and the ANQP server 120, inaccordance with at least one embodiment of the present invention. Theexample access point device 110A may include a processor 622 that mayinclude at least one of the following: a dual or multi-core centralprocessing unit CPU 624 and CPU 625, a RAM memory 626, a ROM memory 627,and an interface 628 for a keypad, display, and other input/outputdevices. The example access point device 110A may include a WLANprotocol stack 602, including the IEEE 802.11 MAC, for communicationover the network, and WLAN transceiver 608. The WLAN protocol stack mayalso include an application program 600. A query transmit buffer 646buffers the query in the BSS query message 132. The backbone networkframe for the BSS query forwarding message 132 is assembled by thebackbone network protocol 604 and is transmitted by the transceivercircuit 648 over the backbone network 60 to the ANQP server 120. Thewireless device STA 100 is shown associated to the access point 110A, sothe query transmit buffer 646 buffers the BSS query, with the indicationof the state that the STA is associated with the access point, and theSTA ID.

The example ANQP server 120, may include a processor 622′ that mayinclude at least one of the following: a dual or multi-core centralprocessing unit CPU 624′ and CPU 625′, a RAM memory 626′, a ROM memory627′, and an interface 628′ for a keypad, display, and otherinput/output devices. The example ANQP server 120 may include a backbonenetwork protocol 604′ and transceiver circuit 648′ connected to thebackbone network 60 to receive the BSS query forwarding message 132. TheANQP server 120 may also include an application program 600′. The querydatabase 640 may be integral with the ANQP server 120 or it may belocated remotely from the ANQP server 120. The figure shows the ANQPserver 120 transmitting a BSS candidate list response message 134 overthe backbone network 60 to the access point device 110A.

In an example embodiment, both the access point device 110A and the ANQPserver 120 may include interface circuits that interface with one ormore radio transceivers, battery and other power sources, key pad, touchscreen, display, microphone, speakers, ear pieces, camera or otherimaging devices, etc. The RAM and ROM may be removable memory devices626 such as smart cards, SIMs, WIMs, semiconductor memories such as RAM,ROM, PROMS, flash memory devices, etc. The processor protocol stacklayers, and/or application program may be embodied as program logicstored in the RAM and/or ROM in the form of sequences of programmedinstructions which, when executed in the CPU, carry out the functions ofexample embodiments. The program logic may be delivered to the writeableRAM, PROMS, flash memory devices, etc. from a computer program productor article of manufacture in the form of computer-usable media such asresident memory devices, smart cards or other removable memory devices.Alternately, they may be embodied as integrated circuit logic in theform of programmed logic arrays or custom designed application specificintegrated circuits (ASIC). The one or more radios in the device may beseparate transceiver circuits or alternately, the one or more radios maybe a single RF module capable of handling one or multiple channels in ahigh speed, time and frequency multiplexed manner in response to theprocessor. An example of removable storage media 626, as shown in FIG.7, may be based on magnetic, electronic and/or optical technologies,such as magnetic disks, optical disks, semiconductor memory circuitdevices and micro-SD memory cards (SD refers to the Secure Digitalstandard) for storing data and/or computer program code as an examplecomputer program product, in accordance with at least one embodiment ofthe present invention.

FIG. 9 illustrates an example embodiment of the invention, whereinexamples of removable storage media 626 are shown, based on magnetic,electronic and/or optical technologies, such as magnetic disks, opticaldisks, semiconductor memory circuit devices and micro-SD memory cards(SD refers to the Secure Digital standard) for storing data and/orcomputer program code as an example computer program product, inaccordance with an example embodiment of the invention.

What is claimed is:
 1. A method, comprising: receiving, by an accesspoint device, a wireless request message from a wireless device,requesting information on candidate wireless networks; determining, bythe access point device, whether the wireless device is associated withthe access point device; and composing, by the access point device, aforwarding message to be transmitted by the access point device to aserver, and including in the forwarding message an indication that thewireless device is associated with the access point device, if thewireless device is associated with the access point device.
 2. Themethod of claim 1, further comprising: receiving, by the access pointdevice, a response message from the server, the response messageincluding identifications of one or more candidate wireless networks, ifthe forwarding message included the indication that the wireless deviceis associated with the access point device; and transmitting, by theaccess point device to the wireless device, the identifications of oneor more candidate wireless networks from the received response message.3. The method of claim 1, further comprising: receiving, by the accesspoint device, a response message from the server, the response messageincluding minimal guidance to possible candidate wireless networks, ifthe forwarding message does not included an indication that the wirelessdevice is associated with the access point device; and transmitting, bythe access point device, information from the received response message,to the wireless device.
 4. The method of claim 1, further comprising:determining, by the access point device, whether the wireless device isauthenticated with the access point device; and including, by the accesspoint device, in the forwarding message, an identification of thewireless device and an indication whether the wireless device isauthenticated with the access point device.
 5. The method of claim 1,wherein the server is an access network query protocol server.
 6. Themethod of claim 1, wherein the forwarding message further includes atleast one of a MAC address of the wireless device and a subscriptionidentifier related to the wireless device.
 7. The method of claim 2,wherein the response message includes an indication of which candidatewireless network offers a best wireless connection for the wirelessdevice.
 8. An apparatus, comprising: at least one processor; at leastone memory including computer program code; the at least one memory andthe computer program code configured to, with the at least oneprocessor, cause the apparatus at least to: receive a wireless requestmessage from a wireless device, requesting information on candidatewireless networks; determine whether the wireless device is associatedwith the apparatus; and compose a forwarding message to be transmittedby the apparatus to a server, and including in the forwarding message anindication that the wireless device is associated with the apparatus, ifthe wireless device is associated with the apparatus.
 9. The apparatusof claim 8, further comprising: the at least one memory and the computerprogram code configured to, with the at least one processor, cause theapparatus at least to: receive a response message from the server, theresponse message including identifications of one or more candidatewireless networks, if the forwarding message included the indicationthat the wireless device is associated with the apparatus; and transmitto the wireless device, the identifications of one or more candidatewireless networks from the received response message.
 10. A computerprogram product comprising computer executable program code recorded ona computer readable non-transitory storage medium, the computerexecutable program code comprising: code for receiving, by an accesspoint device, a wireless request message from a wireless device,requesting information on candidate wireless networks; code fordetermining, by the access point device, whether the wireless device isassociated with the access point device; and code for composing, by theaccess point device, a forwarding message to be transmitted by theaccess point device to a server, and including in the forwarding messagean indication that the wireless device is associated with the accesspoint device, if the wireless device is associated with the access pointdevice.
 11. A method, comprising: receiving, by a server, a forwardingmessage from an access point device, including an indication whether awireless device is associated with the access point device, the accesspoint device having received from the wireless device, a wirelessrequest message requesting information on candidate wireless networks;accessing, by the server, information on available wireless networks inresponse to the forwarding message, if the forwarding message includedan indication that the wireless device is associated with the accesspoint device; and transmitting, by the server, a response message to theaccess point device, the response message including identifications ofone or more candidate wireless networks, in response to the forwardingmessage, if the forwarding message included an indication that thewireless device is associated with the apparatus.
 12. The method ofclaim 11, further comprising: transmitting, by the server, a responsemessage to the access point, the response message listing candidatenetworks based on load balancing among the available networks, if theforwarding message included the indication that the wireless device isassociated with the access point device.
 13. The method of claim 11,further comprising: transmitting, by the server, a response message tothe access point, the response message including minimal guidance topossible candidate wireless networks, if the forwarding message does notincluded an indication that the wireless device is associated with theaccess point device.
 14. The method of claim 11, further comprising:receiving, by the server, in the forwarding message, an identificationof the wireless device and an indication whether the wireless device isauthenticated with the access point device.
 15. The method of claim 11,wherein the server is an access network query protocol server.
 16. Themethod of claim 1, wherein the forwarding message further includes atleast one of a MAC address of the wireless device and a subscriptionidentifier related to the wireless device.
 17. The method of claim 11,wherein the response message includes an indication of which candidatewireless network offers a best wireless connection for the wirelessdevice.
 18. An apparatus, comprising: at least one processor; at leastone memory including computer program code; the at least one memory andthe computer program code configured to, with the at least oneprocessor, cause the device at least to: receive a forwarding messagefrom an access point device, including an indication whether a wirelessdevice is associated with the access point device, the access pointdevice having received from the wireless device, a wireless requestmessage requesting information on candidate wireless networks; accessinformation on available wireless networks in response to the forwardingmessage, if the forwarding message included an indication that thewireless device is associated with the access point device; and transmita response message to the access point device, the response messageincluding identifications of one or more candidate wireless networks, inresponse to the forwarding message, if the forwarding message includedan indication that the wireless device is associated with the apparatus.19. The apparatus of claim 18, further comprising: the at least onememory and the computer program code configured to, with the at leastone processor, cause the device at least to: transmit a response messageto the access point, the response message including identifications ofone or more available wireless networks, if the forwarding messageincluded the indication that the wireless device is associated with theaccess point device.
 20. A computer program product comprising computerexecutable program code recorded on a computer readable, non-transitorystorage medium, the computer executable program code, when executed by acomputer processor, comprising: code for receiving, by a server, aforwarding message from an access point device, including an indicationwhether a wireless device is associated with the access point device,the access point device having received from the wireless device, awireless request message requesting information on candidate wirelessnetworks; code for accessing, by the server, information on availablewireless networks in response to the forwarding message, if theforwarding message included an indication that the wireless device isassociated with the access point device; and code for transmitting, bythe server, a response message to the access point device, the responsemessage including identifications of one or more candidate wirelessnetworks, in response to the forwarding message, if the forwardingmessage included an indication that the wireless device is associatedwith the apparatus.